package com.ruoyi.project.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotBlank;
import java.util.Date;

/**
 * 项目合同对象 project_contract
 * 
 * @author zhaogang
 * @date 2024-07-18
 */
public class ProjectContract extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 合同主键 */
    private Long contractId;

    /** 项目主键 */
    @Excel(name = "项目主键")
    private Long projectId;

    /** 合同类型,1-施工界面划分,2-合同文本,3-进度款支付台账 */
    @Excel(name = "合同类型,1-施工界面划分,2-合同文本,3-进度款支付台账")
    private Integer contractType;

    /** 合同名称 */
    @Excel(name = "合同名称")
    private String contractName;

    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createtime;

    /** 项目名称 */
    @Excel(name = "项目名称")
    private String projectName;

    public String getProjectName() {
        return projectName;
    }

    public void setProjectName(String projectName) {
        this.projectName = projectName;
    }

    public Date getCreatetime() {
        return createtime;
    }

    public void setCreatetime(Date createtime) {
        this.createtime = createtime;
    }

    public void setContractId(Long contractId)
    {
        this.contractId = contractId;
    }

    public Long getContractId() 
    {
        return contractId;
    }
    public void setProjectId(Long projectId) 
    {
        this.projectId = projectId;
    }

    public Long getProjectId() 
    {
        return projectId;
    }
    public void setContractType(Integer contractType) 
    {
        this.contractType = contractType;
    }

    public Integer getContractType() 
    {
        return contractType;
    }
    public void setContractName(String contractName) 
    {
        this.contractName = contractName;
    }

    public String getContractName() 
    {
        return contractName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("contractId", getContractId())
            .append("projectId", getProjectId())
            .append("contractType", getContractType())
            .append("contractName", getContractName())
            .append("createtime", getCreatetime())
                .append("projectName", getProjectName())
            .toString();
    }
}
